---
title: 'Language'
description: 'Learn which languages are supported by the Schedule-X calendar, and how to customize translations'
---

# Language

## Supported languages for calendar

Schedule-X currently supports the following languages. For support of further languages, please open a PR, adding
your translations under the folder: `packages/translations/src/locales/xx-XX`

| Language                 | Code       |
|--------------------------|------------|
| Arabic (Egypt)           | ar-EG      |
| Catalan                  | ca-ES      |
| Chinese (China)          | zh-CN      |
| Chinese (Taiwan)         | zh-TW      |
| Croatian                 | hr-HR      |
| Czech                    | cs-CZ      |
| Danish                   | da-DK      |
| Dutch                    | nl-NL      |
| English (UK)             | en-GB      |
| English (US)             | en-US      |
| Estonian                 | et-EE      |
| Finnish                  | fi-FI      |
| French                   | fr-FR      |
| French (Switzerland)     | fr-CH      |
| German                   | de-DE      |
| Hebrew                   | he-IL      |
| Bahasa (ID)              | id-ID      |
| Italian                  | it-IT      |
| Japanese                 | ja-JP      |
| Korean                   | ko-KR      |
| Kyrgyz                   | ky-KG      |
| Lithuanian               | lt-LT      |
| Macedonian               | mk-MK      |
| Norwegian (Bokmål)       | nb-NO      |
| Persian                  | fa-IR      |
| Polish                   | pl-PL      |
| Portuguese (BR)          | pt-BR      |
| Romanian                 | ro-RO      |
| Russian                  | ru-RU      |
| Serbian (Latin alphabet) | sr-Latn-RS |
| Serbian (Cyrillic)       | sr-RS      |
| Slovak                   | sk-SK      |
| Slovenian                | sl-SI      |
| Spanish                  | es-ES      |
| Swedish                  | sv-SE      |
| Turkish                  | tr-TR      |
| Ukrainian                | uk-UA      |

## Customizing the translations

To customize translations, you can use the `mergeLocales` helper to merge the original translations
with your custom translations. This way, you can override the default translations with your own.

Below is an example of how to customize the `Week` translation for the `en-US` locale, which could be useful if
you configure the number of days shown in a week.

```ts
import { translations, mergeLocales } from '@schedule-x/translations'

const calendar = createCalendar({
  translations: mergeLocales(
    translations,
    {
      enUS: {
        'Week': '4 days'
      }
    }
  ),
  // ... other config options
})
```

## Direction

Schedule-X supports both LTR and RTL languages. You do not need to configure this explicitly; Schedule-X just looks at the `dir` attribute
of the html element on your page.
